// /*
//  *@Author: 张楚
//  *@Date: 2021-07-26 17:46:30
//  *@Description: 极光推送
// */

// import 'package:flutter/material.dart';
// import 'package:flutter/services.dart';
// import 'package:jpush_flutter/jpush_flutter.dart';
// import 'package:totaldemo/source/jpush.dart';
// import 'package:totaldemo/utils/util.dart';

// class JPushPage extends StatefulWidget {
//   const JPushPage({Key key}) : super(key: key);

//   @override
//   _JPushPageState createState() => _JPushPageState();
// }

// class _JPushPageState extends State<JPushPage> {
//   String debugLable = 'Unknown'; /*错误信息*/
//   final JPush jpush = new JPush();
//   List listerlist = [];
//   String getRegisteriId = '';
//   @override
//   void initState() {
//     super.initState();
//     // PushUtil.init(); /*极光插件平台初始化*/
//     final JPush jpush = new JPush();
//     jpush.addEventHandler(
//         onReceiveNotification: (Map<String, dynamic> message) async {
//       print("接收到推送>>>>>>>>>>>>>>>>>: $message");
//     }, onOpenNotification: (Map<String, dynamic> message) async {
//       print("通过点击推送进入app: $message");
//     }, onReceiveMessage: (Map<String, dynamic> message) async {
//       print("接收到自定义消息: $message");
//     }, onReceiveNotificationAuthorization:
//             (Map<String, dynamic> message) async {
//       print("通知权限状态: $message");
//     });
//     jpush.setup(
//       appKey: "b9551c2f6d171e4ff32b57c9", //你自己应用的 AppKey
//       channel: "jpush_demo",
//       production: false,
//       debug: true,
//     );
//   }

//   @override
//   Widget build(BuildContext context) {
//     return Scaffold(
//       appBar: AppBar(
//         title: Text('极光推送'),
//       ),
//       body: Container(
//         // width: double.infinity,
//         child: Column(
//           mainAxisAlignment: MainAxisAlignment.start,
//           children: [
//             Text('通知内容：$debugLable'),
//             Divider(),
//             (getRegisteriId != null && getRegisteriId.length > 0)
//                 ? Text('获取到到RegistrationID是：$getRegisteriId')
//                 : Container(),
//             Divider(),
//             SizedBox(
//               height: 100,
//             ),
//             Expanded(
//               child: Wrap(
//                 // crossAxisAlignment: CrossAxisAlignment.start,
//                 children: [
//                   Padding(
//                     padding: const EdgeInsets.only(left: 8),
//                     child: ElevatedButton(
//                         onPressed: () {
//                           var localNotification = LocalNotification(
//                               id: 234,
//                               title: "本地推送",
//                               buildId: 1,
//                               content:
//                                   "  随便写点内容，时间 ${DateTime.now().toIso8601String()}",
//                               fireTime: DateTime.now(), // 立即发送
//                               subtitle: "副标题 123456",
//                               badge: 1,
//                               extra: {"myInfo": "推送信息balabla"} // 携带数据
//                               );
//                           jpush.sendLocalNotification(localNotification);

//                           jpush.addEventHandler(onReceiveNotification:
//                               (Map<String, dynamic> message) async {
//                             print(">>>>>>>>>>>>>>>>>flutter 接收到推送: $message");
//                             message.forEach((key, value) {
//                               if (key == 'alert') {
//                                 // print(key);
//                                 // print(value);
//                                 listerlist.add(value);
//                               }
//                               // }
//                             });
//                             setState(() {
//                               debugLable = listerlist.toString();
//                             });
//                           });
//                         },
//                         child: Text('本地推送')),
//                   ),
//                   Padding(
//                     padding: const EdgeInsets.only(left: 8),
//                     child: ElevatedButton(
//                         onPressed: () {
//                           var fireDate = DateTime.fromMillisecondsSinceEpoch(
//                               DateTime.now().millisecondsSinceEpoch + 3000);
//                           var localNotification1 = LocalNotification(
//                               id: 199,
//                               title: '定时发送',
//                               buildId: 1,
//                               content: '三秒后本地推送',
//                               subtitle: '我是子标题',
//                               badge: 5,
//                               extra: {'data': '携带数据'},
//                               fireTime: fireDate);
//                           jpush.sendLocalNotification(localNotification1);
//                         },
//                         child: Text('定时推送')),
//                   ),
//                   btnUser(
//                       function: () {
//                         listerlist.clear();
//                         setState(() {
//                           debugLable = '已经清除';
//                         });
//                       },
//                       title: '清除内容 X',
//                       colors: Colors.red),
//                   btnUser(
//                       function: () {
//                         jpush.openSettingsForNotification();
//                       },
//                       title: '打开本应用的系统设置'),
//                   btnUser(
//                       function: () {
//                         jpush.isNotificationEnabled().then((bool value) {
//                           // 返回是否开启通知
//                           print(value);
//                           Util.showMsg(value.toString());
//                         });
//                       },
//                       title: '检测是否打开通知'),
//                   btnUser(
//                       function: () {
//                         jpush.getRegistrationID().then((rid) {
//                           print("当前设备的rid： $rid");
//                           setState(() {
//                             getRegisteriId = rid;
//                           });
//                         });
//                       },
//                       title: '获取id')
//                 ],
//               ),
//             )
//           ],
//         ),
//       ),
//     );
//   }

//   Widget btnUser(
//       {Function function, String title, Color colors = Colors.blue}) {
//     return Padding(
//       padding: const EdgeInsets.only(left: 8),
//       child: ElevatedButton(
//           onPressed: function,
//           child: Text(title),
//           style:
//               ButtonStyle(backgroundColor: MaterialStateProperty.all(colors))),
//     );
//   }
// }
